linear_algebra.basis
⟷
Mathlib.LinearAlgebra.Basis.VectorSpace
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.
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
@@ -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)
@@ -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)
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -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`. -/
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -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 _
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -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
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -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
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -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 /-
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -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
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -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
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -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
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce64cd319bb6b3e82f31c2d38e79080d377be451
@@ -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
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce64cd319bb6b3e82f31c2d38e79080d377be451
@@ -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`. -/
mathlib commit https://github.com/leanprover-community/mathlib/commit/32a7e535287f9c73f2e4d2aef306a39190f0b504
@@ -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 /-
mathlib commit https://github.com/leanprover-community/mathlib/commit/32a7e535287f9c73f2e4d2aef306a39190f0b504
@@ -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 /-
mathlib commit https://github.com/leanprover-community/mathlib/commit/63721b2c3eba6c325ecf8ae8cca27155a4f6306f
@@ -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
mathlib commit https://github.com/leanprover-community/mathlib/commit/8ea5598db6caeddde6cb734aa179cc2408dbd345
@@ -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`. -/
mathlib commit https://github.com/leanprover-community/mathlib/commit/893964fc28cefbcffc7cb784ed00a2895b4e65cf
@@ -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)
mathlib commit https://github.com/leanprover-community/mathlib/commit/9fb8964792b4237dac6200193a0d533f1b3f7423
@@ -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
mathlib commit https://github.com/leanprover-community/mathlib/commit/a3e83f0fa4391c8740f7d773a7a9b74e311ae2a3
@@ -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']
mathlib commit https://github.com/leanprover-community/mathlib/commit/7e5137f579de09a059a5ce98f364a04e221aabf0
@@ -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)) :
mathlib commit https://github.com/leanprover-community/mathlib/commit/31c24aa72e7b3e5ed97a8412470e904f82b81004
@@ -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 < ⊤) :
mathlib commit https://github.com/leanprover-community/mathlib/commit/5f25c089cb34db4db112556f23c50d12da81b297
@@ -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
mathlib commit https://github.com/leanprover-community/mathlib/commit/cca40788df1b8755d5baf17ab2f27dacc2e17acb
@@ -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 _
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -76,7 +76,7 @@ universe u
open Function Set Submodule
-open BigOperators
+open scoped BigOperators
variable {ι : Type _} {ι' : Type _} {R : Type _} {R₂ : Type _} {K : Type _}
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -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) :
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -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 _
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -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`). -/
mathlib commit https://github.com/leanprover-community/mathlib/commit/e1a18cad9cd462973d760af7de36b05776b8811c
@@ -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)) = ⊤ :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/8d33f09cd7089ecf074b4791907588245aec5d1b
@@ -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`). -/
mathlib commit https://github.com/leanprover-community/mathlib/commit/75e7fca56381d056096ce5d05e938f63a6567828
@@ -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']
mathlib commit https://github.com/leanprover-community/mathlib/commit/95a87616d63b3cb49d3fe678d416fbe9c4217bf4
@@ -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`). -/
mathlib commit https://github.com/leanprover-community/mathlib/commit/c89fe2d59ae06402c3f55f978016d1ada444f57e
@@ -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
mathlib commit https://github.com/leanprover-community/mathlib/commit/0b9eaaa7686280fad8cce467f5c3c57ee6ce77f8
@@ -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
mathlib commit https://github.com/leanprover-community/mathlib/commit/0b9eaaa7686280fad8cce467f5c3c57ee6ce77f8
@@ -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ₓ'. -/
mathlib commit https://github.com/leanprover-community/mathlib/commit/0b9eaaa7686280fad8cce467f5c3c57ee6ce77f8
@@ -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)) = ⊤ :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/e3fb84046afd187b710170887195d50bada934ee
@@ -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, _⟩
mathlib commit https://github.com/leanprover-community/mathlib/commit/08e1d8d4d989df3a6df86f385e9053ec8a372cc1
@@ -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`). -/
mathlib commit https://github.com/leanprover-community/mathlib/commit/36b8aa61ea7c05727161f96a0532897bd72aedab
@@ -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)) = ⊤ :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/fa78268d4d77cb2b2fbc89f0527e2e7807763780
@@ -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) :
mathlib commit https://github.com/leanprover-community/mathlib/commit/fa78268d4d77cb2b2fbc89f0527e2e7807763780
@@ -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
mathlib commit https://github.com/leanprover-community/mathlib/commit/fa78268d4d77cb2b2fbc89f0527e2e7807763780
@@ -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
+
mathlib commit https://github.com/leanprover-community/mathlib/commit/9b2b58d6b14b895b2f375108e765cb47de71aebd
@@ -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
mathlib commit https://github.com/leanprover-community/mathlib/commit/2651125b48fc5c170ab1111afd0817c903b1fc6c
@@ -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 : ι) :
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce86f4e05e9a9b8da5e316b22c76ce76440c56a1
@@ -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ₓ'. -/
mathlib commit https://github.com/leanprover-community/mathlib/commit/57e09a1296bfb4330ddf6624f1028ba186117d82
@@ -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 _
mathlib commit https://github.com/leanprover-community/mathlib/commit/02ba8949f486ebecf93fe7460f1ed0564b5e442c
@@ -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
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce7e9d53d4bbc38065db3b595cd5bd73c323bc1d
@@ -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
mathlib commit https://github.com/leanprover-community/mathlib/commit/3180fab693e2cee3bff62675571264cb8778b212
@@ -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)
mathlib commit https://github.com/leanprover-community/mathlib/commit/38f16f960f5006c6c0c2bac7b0aba5273188f4e5
@@ -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 :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/62e8311c791f02c47451bf14aa2501048e7c2f33
@@ -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) :
mathlib commit https://github.com/leanprover-community/mathlib/commit/195fcd60ff2bfe392543bceb0ec2adcdb472db4c
@@ -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)) = ⊤ :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/195fcd60ff2bfe392543bceb0ec2adcdb472db4c
@@ -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.
mathlib commit https://github.com/leanprover-community/mathlib/commit/4c586d291f189eecb9d00581aeb3dd998ac34442
@@ -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 < ⊤) :
mathlib commit https://github.com/leanprover-community/mathlib/commit/9da1b3534b65d9661eb8f42443598a92bbb49211
@@ -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 <|
mathlib commit https://github.com/leanprover-community/mathlib/commit/22131150f88a2d125713ffa0f4693e3355b1eb49
@@ -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
mathlib commit https://github.com/leanprover-community/mathlib/commit/bd9851ca476957ea4549eb19b40e7b5ade9428cc
These are redundant with _root_.{map_neg,map_sub}
.
@@ -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.
@@ -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
@@ -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 => _
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
After
@@ -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
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)
@@ -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
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)
@@ -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.
Homogenises porting notes via capitalisation and addition of whitespace.
It makes the following changes:
@@ -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)) _ _
@@ -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
@@ -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,
@@ -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
@@ -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.
@@ -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
@@ -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
@@ -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"
@@ -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"
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 def
s or abbrev
s.
@@ -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) :=
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>
@@ -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
∃ 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'
.
@@ -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⟩⟩
∃ 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'
.
@@ -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 _, _⟩
@@ -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
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
.
@@ -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
Filter.map_smul
(#8935)
We use SMulHomClass.map_smul
much more often, even when the Filter
namespace is opened.
@@ -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
[@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>
@@ -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 _)
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.
@@ -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
@@ -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
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>
@@ -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
attribute [simp] ... in
-> attribute [local simp] ... in
(#7678)
Mathlib.Logic.Unique contains the line attribute [simp] eq_iff_true_of_subsingleton in ...
:
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 simp
s. 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.
@@ -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 : ι) :
@@ -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]
rcases
, convert
and congrm
(#7725)
Replace rcases(
with rcases (
. Same thing for convert(
and congrm(
. No other change.
@@ -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
@@ -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]
Note that _root_.map_sum
is not marked as @[simp]
.
@@ -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
@@ -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, ←
_root_.map_sum
more consistently (#7189)
Also _root_.map_smul
when in the neighbourhood.
@@ -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
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>
@@ -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
Currently, the documentation in the file-level docstring is just wrong.
@@ -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.
@@ -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} :
Basis.mem_span_image
, Basis.self_mem_span_image
.@[simp]
to Basis.span_eq
.@@ -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
Type _
and Sort _
(#6499)
We remove all possible occurences of Type _
and Sort _
in favor of Type*
and Sort*
.
This has nice performance benefits.
@@ -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
Type _
and Sort _
(#6499)
We remove all possible occurences of Type _
and Sort _
in favor of Type*
and Sort*
.
This has nice performance benefits.
@@ -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]
@@ -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) :=
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>
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>
@@ -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]
@@ -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
@@ -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
@@ -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
@@ -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
∑'
precedence (#5615)
∑
, ∏
and variants).([^a-zA-Zα-ωΑ-Ω'𝓝ℳ₀𝕂ₛ)]) \(([∑∏][^()∑∏]*,[^()∑∏:]*)\) ([⊂⊆=<≤])
replaced by $1 $2 $3
@@ -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
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
@@ -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⟩)
@@ -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
@@ -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 :=
@@ -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 :=
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.
@@ -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]
@@ -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']
@@ -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 = ⊥) :
Now that leanprover/lean4#2210 has been merged, this PR:
set_option synthInstance.etaExperiment true
commands (and some etaExperiment%
term elaborators)set_option maxHeartbeats
commandsCo-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>
@@ -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
sSup
/iSup
(#3938)
As discussed on Zulip
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>
@@ -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
by
s! (#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 by
s".
@@ -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₂⟩
Mathlib4 version of https://github.com/leanprover-community/mathlib/pull/18814
@@ -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
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>
@@ -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
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>
@@ -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 < ⊤) :
This PR fixes two things:
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.#align
statements. (This was needed for a script I wrote for #3630.)@@ -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)) :
@@ -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
fix-comments
on Mathlib/LinearAlgebra/Basis.lean
.Basis.of_repr
to Basis.ofRepr
.@@ -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
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.
@@ -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
The unported dependencies are